import numpy as np
#写一个ndarray数组进.npy、.txt、.csv文件并且保存
#.npy文件
data = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
np.save('Data.npy', data)

#.txt文件
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
np.savetxt('array.txt', arr, delimiter=',')

#.csv文件
arr2 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
np.savetxt('array2.csv', arr2, delimiter=',')

#编写restore函数
def restore(file_path):
    ext = file_path.split('.')[-1]  # 获取文件扩展名
    # 根据扩展名选择对应的读取函数
    if ext == 'npy':
        read = lambda file_path: np.load(file_path)
    elif ext == 'txt' or ext == 'csv':
        read = lambda file_path: np.loadtxt(file_path, delimiter=',')
    # 使用读取函数读取文件并返回ndarray数组
    try:
        data = read(file_path)
        return data
    except Exception as e:
        print(f"文件读取出错：{str(e)}")
#调用restore函数
# 测试读取.npy文件
npy = restore('Data.npy')
print(".npy:")
print(npy)

# 测试读取.txt文件
txt = restore('array.txt')
print(".txt:")
print(txt)

# 测试读取.csv文件
csv = restore('array2.csv')
print(".csv:")
print(csv)

